package com.ruoyi.system.domain.bo;

import com.ruoyi.common.core.validate.AddGroup;
import com.ruoyi.common.core.validate.EditGroup;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import javax.validation.constraints.*;

import java.util.Date;

import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 评论业务对象 p_store_product_reply
 *
 * @author ruoyi
 * @date 2022-08-01
 */

@Data
@EqualsAndHashCode(callSuper = true)
@ApiModel("评论业务对象")
public class PStoreProductReplyBo extends BaseEntity {

    /**
     * 评论ID
     */
    @ApiModelProperty(value = "评论ID", required = true)
    @NotNull(message = "评论ID不能为空", groups = { EditGroup.class })
    private Long id;

    /**
     * 用户ID
     */
    @ApiModelProperty(value = "用户ID", required = true)
    private Long uid;

    /**
     * 订单ID
     */
    @ApiModelProperty(value = "订单ID", required = true)
    private Long oid;

    /**
     * 商品唯一id
     */
    @ApiModelProperty(value = "商品唯一id", required = true)
    @NotNull(message = "订单编号不能为空", groups = { AddGroup.class, EditGroup.class })
    private String unique;

    /**
     * 商品id
     */
    @ApiModelProperty(value = "商品id", required = true)
    @NotNull(message = "商品id不能为空", groups = { AddGroup.class, EditGroup.class })
    private Long productId;

    /**
     * 某种商品类型(普通商品、秒杀商品）
     */
    @ApiModelProperty(value = "某种商品类型(普通商品、秒杀商品）", required = true)
    @NotBlank(message = "某种商品类型(0 普通商品、1 秒杀商品）不能为空", groups = { AddGroup.class, EditGroup.class })
    private String replyType;

    /**
     * 商品分数
     */
    @ApiModelProperty(value = "商品分数", required = true)
    @NotNull(message = "商品分数不能为空", groups = { AddGroup.class, EditGroup.class })
    private Integer productScore;

    /**
     * 服务分数
     */
    @ApiModelProperty(value = "服务分数", required = true)
    @NotNull(message = "服务分数不能为空", groups = { AddGroup.class, EditGroup.class })
    private Integer serviceScore;

    /**
     * 评论内容
     */
    @ApiModelProperty(value = "评论内容", required = true)
    @NotBlank(message = "评论内容不能为空", groups = { AddGroup.class, EditGroup.class })
    private String comment;

    /**
     * 评论图片
     */
    @ApiModelProperty(value = "评论图片", required = true)
    @NotBlank(message = "评论图片不能为空", groups = { AddGroup.class, EditGroup.class })
    private String pics;

    /**
     * 管理员回复内容
     */
    @ApiModelProperty(value = "管理员回复内容", required = true)
    private String merchantReplyContent;

    /**
     * 管理员回复时间
     */
    @ApiModelProperty(value = "管理员回复时间", required = true)
    private Long merchantReplyTime;

    /**
     * 0未回复1已回复
     */
    @ApiModelProperty(value = "0未回复1已回复", required = true)
    private Integer isReply;

    /**
     * 用户名称
     */
    @ApiModelProperty(value = "用户名称", required = true)
    private String nickname;

    /**
     * 用户头像
     */
    @ApiModelProperty(value = "用户头像", required = true)
    private String avatar;

    /**
     * 商品规格属性值,多个,号隔开
     */
    @ApiModelProperty(value = "商品规格属性值,多个,号隔开", required = true)
    @NotBlank(message = "商品规格属性值,多个,号隔开不能为空", groups = { AddGroup.class, EditGroup.class })
    private String sku;


}
